[Alexa] 本日公開された Test Simulator(Beta)を使ってみました
1 はじめに
本日より、Alexaの開発者コンソールでTest Simulator(Beta) が利用可能になりました。
テストのタブで、Go to Test Simulator ベータを選択することで利用が可能です。
この Test Simulator(Beta) が、既存のテストシミュレーターと大きく違うのは、以下の点だと思います。
- 対象のスキルのテストだけではなく、Alexaの組み込みのスキルを使用したり、他のスキルを呼び出すこともできる(1台Echoの端末を取得できたのと同じ感じ)
- Alexaとスキルの間のJSONのやり取りだけでなく、Alexaとデバイス間のイベント・ディレクティブも表示される(AVS側の動きもよく分かる)
シミュレーター内には、テストの種類ごとに下記の3つのタブが有ります。
- Alexa Simulator
- Manual JSON
- Voice & Tone
それでは、ちょっと触ってみることにします。
2 Alexa Simulator
テキスト又は、音声でスキルと対話します。
マイクのアイコンをクリックすると、音声でも入力可能です。
(1) Skill I/O
この時、右側のSkill I/Oを開くと、既存のテストシミュレーターと同様にAlexaとスキルの間のJSONのやり取りを確認することができます。
なお、このシミュレーターでは、スキルとの間のセッションの維持されており、ダイアログフローをテストすることも可能との事です。
セッションを切るための「リセット」のようなボタンが無かったので、強制的に切るには、ブラウザをリロードするのが良いようです。
(2) Echo Show Display
タブをEcho Show Displayに切り替えると、Echo Showでどのように表示されるかも確認できます。 こちらも、既存のテストシミュレーターと同じ機能です。
(3) Device Log
こちらが、完全に今まで無かった機能です。Device Logでは、Alexaとデバイスの間のEvent及びDirectiveが一覧されてあり、各行を選択すると、その内容(JSON)が表示できます。
3 Manual JSON
JSONリクエストを直接入力し、スキルが返すJSONレスポンスを確認します。
このタブでは、スキルセッションは維持されません。 これは、LambdaコンソールでJSONリクエストをテストする場合と非常によく似ています。
スキルが複数の地域固有のエンドポイントをサポートしている場合は、ページ下部のリストからテストするエンドポイントを選択できます。
4 Voice & Tone
プレーンテキスト又は、SSMLを入力し、Alexaがどのように話すかを聞くことができます。
一番下のリストから言語の選択も可能です。テスト中のスキルが、その言語をサポートしているかどうかは関係ありません。
5 制限等
ドキュメントには、Test Simulator(Beta) での幾つかの制限等が記載されていましたので、簡単に紹介しておきます。
(1) AudioPlayer interface
オーディオの再生は出来ないとのことです。
ただし、Skill I/Oで、スキルから送信されたAudioPlayerディレクティブを確認することは可能です。
再生が行われないため、PlaybackNearlyFinishedなど、再生中のイベントによってトリガーされたAudioPlayerをテストすることはできません。
(2) Device Address API
デバイスアドレスAPIの完全なテストは出来ないようです。
ただし、ユーザーが、デバイスアドレスのアクセス権を許可していない場合のフローは、テストが可能です。
(3) Display interface
Display interfaceを使用するスキルのテストは可能とのことです。
Echo Showの表示オプションを有効にすると、Echo Showでのレスポンスの概算を見ることができます。
(4) PlaybackController interface
ユーザーがリモコンなどのコントロールと対話するときにスキルに送信される、PlaybackControllerインターフェースについては、テストできないとのことです。
(5) VideoApp directives
Test Simulator(Beta)では、ビデオの再生はできません。こちらも、Skill I/OでVideoAppディレクティブを確認する感じでしょうか。
6 最後に
Test Simulator(Beta)を使用すると、今までスキル作成(ASK)しか作ったことが無い方にも、AVS側の動きが非常によく分かると思います。
また、全てのEvent/Directiveを見れるため、AVS作成者にとっても、非常に有益なツールだと思います。
来週には、プログラムによる自動テストを改善するため、エンティティ解決やダイアログ管理などの機能をサポートするためのAPIも公開されるとAlexa Blogでは、紹介されていました。
止まらない、開発者に向けての、Alexaの進化が、怖いです。
※ちょっとハッキリしないのですが、もしかするとamazon.co.jpに紐付いた開発者アカウントでは、現在、利用できないかも知れません。 手元のアカウントでは、どうしてもPage Not Foundとなっていました。(本ブログは、amazon.comに紐付いたアカウントで動作確認しました)
7 参考リンク
カスタムスキルをテストする
Use the Test Simulator (Beta) 言語:日本語では、このドキュメントを見ることはできません